Method and apparatus for processing an image

ABSTRACT

In a method and an apparatus for processing an image, a small screen dot pattern is prepared. A large screen dot pattern is generated by copying or repeatedly reading out the small screen dot pattern. Data of a variable tone image are processed with the large screen dot pattern and are thereby converted into processed image data representative of a screen dot image. The screen dot image may be recorded in a suitable way.

BACKGROUND OF THE INVENTION

This invention relates to method and apparatus for processing signals ofimages such as variable tone images or halftone images.

Dither is a technique for representing the entire gray scale of apicture by picture elements with only two levels, that is, white andblack. The level of gray generally depends on the number of white orblack dots within a unit small area. Some types of the dither techniqueuse screen dot patterns. Computers are frequently employed in performingsuch types of the dither technique.

SUMMARY OF THE INVENTION

It is an object of this invention to provide simple method and apparatusfor processing an image.

A first image processing apparatus of this invention includes a firstmemory holding a screen dot pattern generated in accordance with aprescribed screen cord number and a prescribed screen dot angle. Arecurrent screen dot pattern is generated on the basis of the screen dotpattern held by the first memory. The recurrent screen dot patternresides in an area of a prescribed size. A second memory holds therecurrent screen dot pattern. A first address generator generates anaddress for data write into and data readout from the second memory. Aline buffer circuit temporarily holds data of an input variable toneimage. A second address generator generates an address for data writeinto and data readout from the line buffer circuit. A comparatorcompares image data and screen dot pattern data, the image data beingoutputted from the line buffer circuit, the screen dot pattern databeing outputted from the second memory.

In a first method of processing an image according to this invention,variable tone image data are sequentially inputted. Threshold data aredetermined in correspondence with a sequence of input of the image data.The threshold data are in a two dimensional arrangement. The image dataand the threshold data are compared so that the image data are convertedinto binary screen dot data. A recording device is controlled inaccordance with the screen dot data. The threshold data are formed froma plurality of screen dot patterns arranged in series having a gradientequal to an integer "b" divided by an integer "a". A threshold block iscopied at positions spaced at vertical intervals corresponding to "b"dots and at horizontal intervals corresponding to "a" dots, so that anarray of the same threshold blocks is formed. The threshold blockincludes at least one period of the screen dot pattern. A part isextracted from the array of the threshold blocks, the part residing in asquare area having sides corresponding to (a² +b²) multiplied by aninteger. This part is periodically and repeatedly read out in a verticaldirection and a horizontal direction, so that a large screen dot patternis formed. The large screen dot pattern is used as the threshold data inthe comparing step.

A second image processing apparatus of this invention includes a firstmemory holding data of a threshold block. The threshold block isrepeatedly read out, thereby forming a screen dot pattern having agradient equal to an integer "b" divided by an integer "a". A secondmemory holds the screen dot pattern. A third memory inputs data from thesecond memory and holds a table for conversion of levels of the screendot pattern data. Reference data are derived from the data inputted intothe third memory by referring to the data conversion table. A comparatorcompares variable tone image data and the reference data.

A third image processing apparatus of this invention includes a firstmemory holding a screen dot pattern which is determined in accordancewith a prescribed gradient equal to an integer "b" divided by an integer"a". The screen dot pattern resides in a square area with sides having asize equal to (a² +b²) multiplied by an integer. A second memory inputsdata from the first memory and holds a table for conversion of levels ofthe screen dot pattern data. Reference data are derived from the datainputted into the second memory by referring to the data conversiontable. A comparator compares variable tone image data and the referencedata.

A fourth image processing apparatus of this invention includes a memoryholding at least part of information of an original image where asampling point density is lower than an output dot density. The originalimage has a variable tone. Interpolation picture element values atpoints between adjacent sampling points of the original image arecalculated so that an interpolated image is derived from the originalimage. Values of respective picture elements of the interpolated imageare processed with threshold values so that the picture element valuesare converted into binary values of dots corresponding to a screen dotimage composed of dots.

A second method of processing an image according to this invention isused for change of a size of an image wherein new data are added betweenoriginal picture element data through an interpolation process to changea size of the original image by a factor of B/α where the characters Band α denote integers. In the second method, an interval betweenadjacent picture elements of an original image is equally divided intoportions whose number equal to an integer G. Points are set whichcorrespond to the respective divided interval portions. Interpolationdata at the points are determined which vary as a function of theadjacent picture elements of the original image. Part of theinterpolation data is selected at a rate equal to B/(α·G).

A fifth image processing apparatus of this invention includes asubtracter calculating a difference between data of adjacent pictureelements of a variable tone image. A first memory holds addressesdepending on a prescribed division number and being for readout ofinterpolation data. A second memory holds the interpolation data whichare determined in accordance with the addresses from the first memory.An adder adds data of a picture element of the original image and theinterpolation data read out from the second memory.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an image processing apparatus according toa first embodiment of this invention.

FIG. 2 is a diagram of a screen dot pattern generated in the apparatusof FIG. 1.

FIG. 3 is a block diagram of an image processing apparatus according toa second embodiment of this invention.

FIGS. 4 and 5 are diagrams of threshold blocks generated in theapparatus of FIG. 3.

FIG. 6 is a diagram of an internal structure of a threshold blockgenerated in the apparatus of FIG. 3.

FIG. 7 is a diagram of series of threshold blocks generated in theapparatus of FIG. 3.

FIG. 8 is a diagram of an array of threshold blocks generated in theapparatus of FIG. 3.

FIG. 9 is a block diagram of an image processing apparatus according toa third embodiment of this invention.

FIG. 10 is a diagram of various image data in an image processingapparatus according to a fourth embodiment of this invention.

FIG. 11 is a block diagram of the image processing apparatus of thefourth embodiment of this invention.

FIG. 12 is a diagram of an original input image data in an imageprocessing apparatus according to a fifth embodiment of this invention.

FIG. 13 is a diagram of the relationship between division position i andinterpolation increment data in the apparatus of the fifth embodiment ofthis invention.

FIG. 14 is a diagram of image data obtained through an interpolationprocess in the apparatus of the fifth embodiment of this invention.

FIG. 15 is a block diagram of the image processing apparatus of thefifth embodiment of this invention.

FIG. 16 is a diagram of image data and nonlinear tone distributionfunctions.

FIG. 17 is a diagram of image data and resultant nonlinear tonedistribution functions.

FIG. 18 is a diagram of image data obtained through a nonlinearinterpolation process.

FIG. 19 is a diagram of original input image data and image dataobtained, through an interpolation process in an image processingapparatus according to a sixth embodiment of this invention.

FIG. 20 is a block diagram of an image processing apparatus according toa seventh embodiment of this invention.

FIG. 21 is a block diagram of an image processing apparatus according toan eighth embodiment of this invention.

FIG. 22 is a diagram of original input image data in the apparatus ofFIG. 21.

FIG. 23 is a diagram of part of the original input image data of FIG.22.

FIGS. 24 and 25 are different types of diagrams of image data obtainedthrough an interpolation process in the apparatus of FIG. 21.

FIG. 26 is a block diagram of an image processing apparatus according toa ninth embodiment of this invention.

DESCRIPTION OF THE FIRST PREFERRED EMBODIMENT

With reference to FIG. 1, an image processing apparatus includes astorage unit 1001 which holds data representative of a predeterminedrecurrent screen dot pattern corresponding to a screen line number orscreen cord number l, a screen dot angle θ, and a recording density k ofa recording device. Data representative of the portion of the recurrentscreen dot pattern in a square area of a size corresponding to thesquare of a screen dot pitch d are transferred from the storage unit1001 to a memory 1031 by a microcomputer 1011. This data transfer isperformed along data lines 1021 connecting the microcomputer 1011 andthe memory 1031.

Input variable tone image data or input gray scale image datacorresponding to one line are written by the microcomputer 1011 into aline buffer memory 1041 or 1051. This data write is performed by usingdata lines 1021 connecting the microcomputer 1011 and the line buffermemories 1041 and 1051. Each time image data corresponding to one lineare inputted, the data writes into the line buffer memories 1041 and1051 are changed.

A combination of an X address generator 1061 and a Y address generator1071 outputs an XY address signal 1081 to the memory 1031. One set ofdata corresponding to a picture element or a unit portion of the screendot pattern is read out from the memory 1031 in response to the XYaddress signal. The screen dot pattern data read out from the memory1031 are transferred to a comparator 1121 via a line 1131. At the sametime, one set of data corresponding to a picture element or a unitportion of the input image are read out from each of the line buffermemories 1041 and 1051 in response to an address signal 1101 supplied tothe line buffer memories 1041 and 1051 from an address generator 1091. Aselector 1111 accepts the image data read out from one of the linebuffer memories 1041 and 1051 free from the data write process andrejects the image data read out from the other line buffer memorysubjected to the data write process. Accordingly, the two line buffermemories 1041 and 1051 are changed cyclically such that one is subjectedto an effective data read process and the other is subjected to a datawrite process during a first period, and that one is subjected to a datawrite process and the other is subjected to an effective data readprocess during a second period. The selector 1111 passes the acceptedimage data to the comparator 1121.

The devices 1121 compares the levels represented by the image data andthe screen dot pattern data, and generates screen dot image data 1141representative of the result of the level comparison. It is preferablethat, in the comparator 1121, data corresponding to the comparisonresult are read out from a read-only memory in accordance with anaddress determined by a combination of the compared data values. Thescreen dot image data 1141 are in a bit serial form where one bitcorresponds to one dot. The screened dot image data 1141 are inputtedinto a shift register 1151 and are packed into 8-bit parallel data 1161fed to a recording device or a laser beam printer 1171. The laser beamprinter 1171 derives a screen dot image from the screen dot image data1161.

A timing control circuit 1181 outputs clocks and timing control signalsto the devices 1011, 1031, 1041, 1051, 1061, 1071, 1091, 1111, 1151, and1171.

The size of the recurrent screen dot pattern stored in the memory 1031is determined as follows. With reference to FIG. 2 showing the case of ascreen dot area percentage of 50%, small dark squares correspond toblack areas of screen dots and small white squares correspond to whiteareas of screen dots. The gradient of a series of black dots is called ascreen dot angle equal to an integer "b" divided by an integer "a". Thepoint O is defined as being distant from the center P of a given screendot by an interval corresponding to the integer "a" along the series ofthe screen dots. As understood from FIG. 2, the point O coincides withthe center of a screen dot. The point Q is defined as being distant fromthe point O by an interval corresponding to the integer "b" alonganother series of screen dots extending perpendicular to the line OP. Asunderstood from FIG. 2, the point Q also coincides with the center of ascreen dot. Accordingly, it can be thought that the central point P of ascreen dot appears again at the point Q distant from the original pointP in the horizontal direction X, and that there are periodical orrecurrent patterns with a period Td. Similarly, it can be seen that, inthe vertical direction Y, there are periodical or recurrent patternswith a period Td equal to the period in the horizontal direction X.Accordingly, the four-cornered shape PQRS is a square with sides whosesize equal to the value Td. The value Td is given as: ##EQU1##

The angle <OPQ equals a screen dot angle θ which corresponds to thescreen dot gradient b/a and which is given as:

    θ=tan.sup.-1 (b/a)                                   (2)

The euclidean distance d determined by the dot gradient b/a is given as:##EQU2## The following equation (4) is derived from the equations (1)and (3).

    Td=d.sup.2                                                 (4)

The screen cord number l has a relationship with the dot recordingdensity k of the recording device and the screen dot pitch d asexpressed in the following equation.

    l=k/d                                                      (5)

The period of the screen dot pattern is thus uniquely determined by theequations (1) and (2) regardless of the screen dot angle and the screencord number. Accordingly, a large screen dot pattern of an arbitrarysize can be generated by repeating or copying the small recurrent screendot pattern in the horizontal direction and the vertical direction.

Tables 1A and 1B show the calculated relationship among the integers "a"and "b", the dot gradient θ, the screen dot pitch, and the period or thelength of one side of the recurrent square area under conditions where arecording device, that is , the laser beam printer 1171 has a recordingdensity k of 400 dot/inch and where the screen cords having a numberequal to 50-140 line/inch are generated. As understood from Tables 1Aand 1B, the length of one side of the square area for the recurrence ofa screen dot pattern is equal to or smaller than 64 in unit of dotnumber. Accordingly, when the memory 1031 holds data corresponding tothese screen dot patterns, a large screen dot pattern having a sizeequal to 50-140 line/inch can be generated from the held screen dotpattern. In the case where the recording device has a recording densityof 454.5 dot/inch, the size of the recurrent square area equals 82 inunit of dot number. In the case where the recording device has arecording density of 909 dot/inch, the size of the recurrent square areaequals 328 in unit of dot number.

                  TABLE 1A                                                        ______________________________________                                        a      b        θ                                                                              pitch  Line No.                                                                              period                                  [dot]  [dot]    [°]                                                                           [dot]  [line/inch]                                                                           [dot]                                   ______________________________________                                        3      0        0.00   3.00   133.33   9                                      4      0        0.00   4.00   100.00  16                                      5      0        0.00   5.00   80.00   25                                      6      0        0.00   6.00   66.67   36                                      7      0        0.00   7.00   57.14   49                                      8      0        0.00   8.00   50.00   64                                      3      1        18.43  3.16   126.49  10                                      4      1        14.04  4.12   97.01   17                                      5      1        11.31  5.10   78.45   26                                      6      1        9.46   6.08   65.76   37                                      7      1        8.13   7.07   56.57   50                                      3      2        33.69  3.61   110.94  13                                      4      2        26.57  4.47   89.44   20                                      5      2        21.80  5.39   74.28   29                                      6      2        18.43  6.32   63.25   40                                      7      2        15.95  7.28   54.94   53                                      1      3        71.57  3.16   126.49  10                                      2      3        56.31  3.61   110.94  13                                      3      3        45.00  4.24   94.28   18                                      4      3        36.87  5.00   80.00   25                                      5      3        30.96  5.83   68.60   34                                      ______________________________________                                    

                  TABLE 1B                                                        ______________________________________                                        a      b        θ                                                                              pitch  Line No.                                                                              period                                  [dot]  [dot]    [°]                                                                           [dot]  [line/inch]                                                                           [dot]                                   ______________________________________                                        6      3        26.57  6.71   59.63   45                                      7      3        23.20  7.62   52.52   58                                      1      4        75.96  4.12   97.01   17                                      2      4        63.43  4.47   89.44   20                                      3      4        53.13  5.00   80.00   25                                      4      4        45.00  5.66   70.71   32                                      5      4        38.66  6.40   62.47   41                                      6      4        33.69  7.21   55.47   52                                      1      5        78.69  5.10   78.45   26                                      2      5        68.20  5.39   74.28   29                                      3      5        59.04  5.83   68.60   34                                      4      5        51.34  6.40   62.47   41                                      5      5        45.00  7.07   56.57   50                                      6      5        39.81  7.81   51.21   61                                      1      6        80.54  6.08   65.76   37                                      2      6        71.57  6.32   63.25   40                                      3      6        63.43  6.71   59.63   45                                      4      6        56.31  7.21   55.47   52                                      5      6        50.19  7.81   51.21   61                                      1      7        81.87  7.07   56.57   50                                      2      7        74.05  7.28   54.94   53                                      3      7        66.80  7.62   52.52   58                                      ______________________________________                                    

In Tables 1A and 1B, for example, the screen dot pattern determined bythe integers "a" and "b" equal to 7 and 2 respectively has the screendot angle θ=15.95 degrees, the screen dot pitch equal to 7.28 dots, thescreen cord number 54.94 line/inch, and the size of one side of thesquare area for the recurrence of the screen dot pattern which equals 53dots. When the maximal size of the screen dot pattern is equal to 64dots for the recording density of 400 dot/inch and the screen cordnumber 50-140 line/inch as described previously, and when the tone isrepresented by 256 different scales of gray, the capacity of the memory1031 can be 64² bytes, that is, 4096 bytes. Under similar conditions,the capacity of the memory 1031 can be 6724 bytes and 107,584 bytes forthe recording densities of 454.5 and 909 dot/inch respectively. In thecase where the recording device has a recording density of 909 dot/inchand the maximal record size corresponds to "A3", that is, 16.5×11.7inch², all the screen dot pattern corresponds to a capacity of about 152MB. Thus, the capacity of the memory 1031 can be approximately a tenthof the capacity corresponding to all the screen dot pattern.

As described previously, a screen dot pattern is produced in accordancewith a prescribed screen cord number l, a prescribed screen dot angle θ,and a prescribed recording density k of a recording device. A smallscreen dot pattern in a square area is extracted from the producedscreen dot pattern, the small square screen dot pattern having a sizecorresponding to a uniquely determined recurrence period. The extractedsmall square screen dot pattern is written into the memory 1031. A largescreen dot pattern is generated by repeatedly and periodically readingout the small square pattern from the memory 1031. This process allowsthe capacity of the memory 1031 to be small.

DESCRIPTION OF THE SECOND PREFERRED EMBODIMENT

As shown in FIG. 3, an image processing apparatus according to a secondembodiment of this invention includes a microcomputer 1012 which readsout a block of threshold data from a storage unit 1022 and whichtransfers the threshold data block to a memory 1032 by use of a datawrite signal 1042. The transferred threshold data are determined incorrespondence with a prescribed dot recording density of a recordingdevice, a prescribed screen cord number, and a prescribed screen dotangle. The data write signal 1042 is generated by a timing controlcircuit 1052. X and Y addresses determined by an X address generator1062 and a Y address generator 1072 are used in writing the thresholddata block into the memory 1032. The threshold data block is repreatedlyread out from the memory 1032 and is transferred to a memory 1082.Addresses determined by the X address generator 1062 and the Y addressgenerator 1072 are used in reading out the threshold data block from thememory 1032. Addresses determined by an X address generator 1092 and a Yaddress generator 1102 are used in writing the threshold data block intothe memory 1082.

In the X address generator 1092, an integer "a" in a dot gradient b/arepresentative of the prescribed screen dot angle is used as addressdata corresponding to an increment in movement along the X direction,and an address determined by (m·a+i) is generated where the characters mand i denote integers and the integer i represents a relative addresswith respect to a reference point within the threshold data block. Inthe Y address generator 1102, an integer "b" in a dot gradient b/a isused as an address data corresponding to an increment in movement in theY direction, and an address determined by (n·b+j) where the characters nand j denote integers and the integer j represents a relative addresswith respect to a reference point within the threshold data block. Inthis way, a screen dot pattern is repeated, forming a recurrent screendot pattern in the memory 1082. The previously-mentioned processes areexecuted during an initialization.

The timing control circuit 1052 sets a screen dot pattern period (a²+b²) in the X address generator 1092 and the Y address generator 1102.Accordingly, a recurrent screen dot pattern in a square area having aside size equal to (a² +b²) is repeatedly read out from the memory 1082,thereby generating a large screen dot pattern of an arbitrary size whichis transferred to a data conversion table memory 1122 via a dataselector 1112. This memory 1122 converts the input data intocorresponding other data and holds the latter data. The microcomputer1012 pretransmits the conversion data to the memory 1122 via datasetting lines 1132 and the data selector 1112. The converted screen dotpattern data are inputted into a comparator 1142.

The microcomputer 1012 selectively writes gray scale image data into oneof line buffer memories 1152 and 1162. During this data write, thepreviously-written gray scale image data are read out from the otherline buffer memory and are transferred to the comparator 1142 via aselector 1172. The data write and data read into and from the linebuffer memories 1152 and 1162 are controlled in accordance withaddresses generated by an address generator 1132. The device 1142compares the levels represented by the gray scale image data and thescreen dot data, outputting a signal of a bit serial form representingthe comparison results. A shift register 1182 convertes the bit serialdata into corresponding parallel data, which are fed to a recordingdevice or a laser beam printer 1192. The laser beam printer 1192 derivesa screen image from the input parallel data and records the screenimage.

The timing control circuit 1052 supplies clocks and timing controlsignals to the devices 1012, 1032, 1062, 1072, 1082, 1092, 1102, 1112,1122, 1132, 1152, 1162, 1172, 1182, and 1192.

The size of the recurrent screen dot pattern is determined as in theprevious description related to FIG. 2.

The generation of the recurrent screen dot pattern will be described inmore detail hereinafter. FIG. 4 shows a rectangular threshold data blockand its copy in the case where b<a. The threshold block of FIG. 4 has avertical size equal to "a" dots and a horizontal size equal to (a+b)dots. FIG. 5 shows a rectangular threshold data block and its copy inthe case where b>a. The threshold block of FIG. 5 has a vertical sizeequal to (a+b) dots and a horizontal size equal to "b" dots. As shown inFIGS. 4 and 5, the original threshold block is translated by "a" dots inthe horizontal direction X and by "b" dots in the vertical direction Y,forming a copy of the original threshold data block at a screen dotangle θ equal to tan⁻¹ b/a. Such a copy process is reiterated.

FIG. 6 shows one example of a threshold data block which has a verticalsize equal to 7 dots and a horizontal size equal to 9 dots. Such athreshold block is stored in the memory 1032 of FIG. 3. In the thresholdblock of FIG. 6, threshold values are distributed in a spiral dependingon a screen dot angle. As shown in FIG. 7, the original threshold blocksof FIG. 6 are translated by 7 dots in the horizontal direction X and by2 dots in the vertical direction Y, forming copies of the originalthreshold blocks at a screen dot angle b/a equal to 2/7. Such copyprocesses are reiterated so that an array of the same threshold blocksis produced. FIG. 8 shows a large array of the threshold blocks of FIG.6. In FIG. 8, the square area defined by the thick lines has sides Tdequal to 53 (7² +2²) dots and corresponds to a recurrent screen dotpattern. Such a recurrent screen dot pattern is generated in the memory1082 of FIG. 3.

DESCRIPTION OF THE THIRD PREFERRED EMBODIMENT

FIG. 9 shows a third embodiment of this invention which is similar tothe embodiment of FIGS. 3-8 except for the following design changes.

The memory 1032 and the address generators 1062 and 1072 (see FIG. 3)are omitted from the embodiment of FIG. 9. The memory 1082 is directlyconnected to the microcomputer 1012. Data corresponding to a recurrentscreen dot pattern and depending on a screen dot angle, a screen cordnumber, and a dot recording density of a recording device are read outfrom the storage unit 1022 and are then transferred to the memory 1082by the microcomputer 1012.

DESCRIPTION OF THE FOURTH PREFERRED EMBODIMENT

With reference to FIG. 10, in an image processing apparatus according toa fourth embodiment of this invention, an original image fmn has a lowresolving power corresponding to 4.7 line/mm. A final screen dot imagegkl derived from the original image is formed by dots having a highdensity of 35.8 line/mm. The ratio of the dot density of the final imageto the dot density of the original image is 7.614. An interpolationimage fkl is generated from the original image fmn. During thegeneration of the interpolation image fkl, boundaries between adjacentpicture elements of the original image fmn are compensated byinterpolation in such a manner that the density of the interpolationimage fkl can be equal to the density of the final image gkl.Specifically, during the generation of the interpolation image fkl fromthe original image fmn, intermediate picture elements whose number equalto N² are calculated from adjacent four picture elements fmn, fm+1,n,fm,n+1, fm+1,n+1 of the orininal image in interpolation. The character Ndenotes an integer closest to a target dot density. The picture elementvalues of the respective lattice points of the interpolation image fklare obtained by weighting the picture element values of the originalimage in accordance with the vertical and horizontal distances from thelattice points of the original image. The interpolation image isdigitalized with a threshold matrix tmn and is thereby converted intothe high dot density final image gkl.

As shown in FIG. 11, an original image 2007 is transmitted from afacsimile transmitter 2017 to a facsimile receiver 2027 via a line 2037.An image store system 2047 stores the received original image into aninternal memory 2057. Data corresponding to three lines of the originalimage are sequentially transferred from the memory 2057 to an imagememory 2067. An interpolation calculation circuit 2077 is supplied withtow lines of data from the memory 2067. This circuit 2077 calculates anN² -number of interpolation picture element values fkl from two adjacentpicture elements of each line in a weighting process or a weightedaverage using the values of the four adjacent picture elements. Whilethe interpolation calculation corresponding to one line of the originalimage is performed, new data of the original image are fed into one lineof the memory 2067 in preparation for the subsequent interpolationcalculation using the new and preceding lines. A threshold circuit 2087compares the interpolation picture element values fkl with a thresholdmatrix tkl, converting the interpolation picture element values fkl intoa binary dot signal gkl. The threshold matrix tkl is supplied from atable memory 2097 to the threshold circuit 2087. The binary dot signalsgkl are sequentially stored into a memory 2107. The memory 2107 has acapacity corresponding to one bit multiplied by 2N lines, holding twosets of the dot data gkl in the vertical direction which were derivedvia the interpolation process with the multiplication of one line of theoriginal image by N lines. The memory 2107 holds the dot data gkl in thehorizontal direction which were derived via the interpolation processwith the multiplication of the original image by N lines. Each time oneline of the original image is processed, N lines of dot data are writteninto the memory 2107 and the current N lines of dot data and thepreceding N lines of dot data are outputted from the memory 2107 to afilm plotter 2117. The film plotter 2117 generates a screen dot image2127 in accordance with the input dot data.

Since the interpolation circuit 2077 precedes the threshold circuit 2087along the flow of a data signal, the data of the original image of thelow resolving power can be converted in real time into the screen dotimage of the high resolving power. In the case of a screening process ofa digital image, an efficient dot conversion can be realized withoutincreasing the quantity of image information.

DESCRIPTION OF THE FIFTH PREFERRED EMBODIMENT

FIG. 12 shows one example of an input image data fed to an imageprocessing apparatus for image enlargement and reduction according to afifth embodiment of this invention. The input image data of FIG. 12 hascomponents g₁, g₂, g₃, and g₄ being equal to 95, 5, 17, and 68respectively and corresponding to picture elements. In the case of adivision number G equal to 4, as shown in FIG. 13, interpolation data Dvary with a division position i=0,1,2,3. FIG. 14 shows an output imagedata which are derived from the input image data of FIG. 12 through alinear interpolation process.

As shown in FIG. 15, the image processing apparatus includes input lines1019 and 1029, and an output line 1039. Picture elements g₁, g₂, and g₃are sequentially inputted into the line 1019, and adjacent pictureelements g₂, g₃, and g₄ are synchrously inputted into the line 1029. Aprocessed image element data h are outputted via the line 1039. Theoutput image data h are given as:

    h=g.sub.n +D                                               (11)

The character D denotes an integer defined as:

    D=INT{((g.sub.n+1 -g.sub.n)/G)·i}                 (12)

where the character INT{ } denotes an integer obtained through arounding process. In the case where the image enlargement/reduction rateB/α is 5/3 and the picture element division number G is 4, the integer idenoting an address for the readout of interpolation data resides in arange as: 0≦i<G. Accordingly, the integer i equals 0, 1, 2, or 3.

With respect to the picture elements g₁ -g₄, the interpolation incrementdata corresponding to the address integers i are calculated from theequation (12) and are given as: 0, -23, -45, -68, 0, 3, 6, 9, 0, 13, 26,38, 0, . . . .

An address i for the readout of the previously-mentioned interpolationincrement data is preset by a suitable device such as a microcomputer ina random-access memory (RAM) 1049 through a data input line 1059. Thereadout address i is in the range of 0 to 3 as described previously andis specifically given as:

    i=INT{k·(α·G)/B}MDD(G)             (13)

where the character INT{ }MDD(G) denotes the remainder in the division"INT{ }/G", and the character k denotes an integer in the range of 0 toB-1. The integer k equals 0, 1, 2, 3, or 4. Accordingly, in this case,reiteration is performed with respect to the addresses i=0, 2, 1, 3, 2.

The picture element data g_(n) and g_(n+1) synchronously inputted intothe respective lines 1019 and 1029 enter a subtracter 1069 calculating adifference Δg=g_(n+1) -g_(n), the difference being in the range of -255to +255. The calculated difference Δg is outputted to a line 1079. Acounter 1089 acts in synchronism with a timing of outputting of aninterpolation picture element. The values i (i=0,2,1,3,2) aresequentially read out from the RAM 1049 in accordance with the outputvalue of the counter 1089 and are outputted to the line 1079. Thedifference Δg and the value i are combined to form a readout addressapplied to a read-only memory (ROM) 1099. The ROM 1099 holdsinterpolation increment data in locations determined by respectiveaddresses. The interpolation increment data corresponding to 0, -45, 3,9, and 26 are sequentially read out from the ROM 1099 in accordance withthe value i=0, 2, 1, 3, and 2, being inputted into an adder 1109. Theoriginal picture element data g_(l) -g₄ are sequentially inputted intothe adder 1109 via the line 1019 in synchronism with the inputting ofthe interpolation increment data into the adder 1109. The device 1109adds the original picture element data and the interpolation incrementdata, forming an output processed image data which are outputted to theline 1039. The output image data have values as:

    [95,95,5,5,17]+[0,-45,3,9,26]=[95,50,8,14,43]              (14)

Timing control signals are applied to the devices 1049, 1069, 1089,1099, and 1109 via an input line 1119.

It should be noted that the RAM 1049 may be replaced by a ROM. Inaddition, the ROM 1099 may be replaced by a RAM.

The linear interpolation may be replaced by nonlinear interpolation,which will be described hereinafter. As shown by the broken lines inFIG. 16, nonlinear tone distribution functions f(g₁), f(g₂), and f(g₃)are determined in accordance with the picture element tone levels g₁,g₂, and g₃. Two adjacent distribution functions are added to formresultant tone distribution functions f(g₁)+f(g₂) and f(g₂)+f(g₃) whichare shown by the broken lines in FIG. 17. As shown by thick lines inFIG. 18, data are newly added through the interpolation process usingthe resultant functions of FIG. 16. In this way, nonlinear interpolationis realized by setting interpolation increment data with arbitratynonlinear functions.

DESCRIPTION OF THE SIXTH PREFERRED EMBODIMENT

FIG. 19(a) shows one example of an input picture element data series fedto an image processing apparatus for image reduction according to asixth embodiment of this invention. The input picture element data g₀-g₁₁ have varying levels of tone. The image processing apparatusprocesses the input image data with reduction interpolation and therebyderives processed image data as shown by thick lines in FIG. 19(b). Inthe case of FIG. 19(b), the rate of the image reduction is 3/5. Asunderstood from FIG. 19(b), during the period between the occurrences ofthe input image data g₂ and g₃, no interpolation picture element dataare generated. This function is realized by the following modificationof the embodiment of FIGS. 12-15.

A selection latch is provided at a stage prior to the subtracter 1069(see FIG. 15) or at a stage following the adder 1109 (see FIG. 15).Selection data (0, 1) written into the RAM 1049 (see FIG. 15) togetherwith interpolation data readout addresses are used in controlling theselection latch.

Preset interpolation increment data are given by thepreviously-mentioned equations (11) and (12). An interpolation datareadout address i is given by the previously-mentioned equation (13) andperiodically assumes 0, 3, and 1 in the case of a division number Gequal to 4. Selection data "0" represents an instruction that anyinterpolation picture element data should not be generated during thecurrent original input picture element data and the subsequent originalinput picture element data. The selection data "1" represents aninstruction that an interpolation picture element data should begenerated. The selection data e are chosen to be 1, 1, 0, 1, 0, . . . incorrespondence with the input data g₀, g₁, g₂, g₃, g₄, . . . .Specifically, the interpolation data readout address i, the input imagedata g_(n), and the selection data e are given as:

g_(n) : g₀, g₁, g₂, g₃, g₄

e: 1, 1, 0, 1, 0

i: 0, 3, X, 1, X

where the character X denotes "arbitrary" and indicates nonrelation withthe process.

DESCRIPTION OF THE SEVENTH PREFERRED EMBODIMENT

As shown in FIG. 20, an image processing apparatus according to aseventh embodiment of this invention includes interpolation sections5013 and 5023 each corresponding to the circuit of FIG. 15. Latches 5033and 5043 temporarily hold image data inputted into the interpolationsection 5013. Latches 5053 and 5063 temporarily hold image dataoutputted from the interpolation section 5013 and inputted into theinterpolation section 5023.

Input lines 5073 and 5083 are subjected to line data and adjancent linedata respectively. The two line data are temporarily held by the latches5033 and 5043 and are synchronized on the basis of timing signalsapplied to the latches 5033 and 5043 from an interpolation controlcircuit 5093. The two line data are transferred from the latches 5033and 5043 to the interpolation section 5013, and are subjected therein toenlargement interpolation by one line. Output image data from theinterpolation section 5013 are transferred to the interpolation section5023 via the latches 5053 and 5063. Specifically, interpolation datacorresponding to one line are held by the latch 5053 and are thentransferred to the latch 5063. The data held by and the data transferfrom the latches 5053 and 5063 are performed at timings determined bytiming signals applied to the latches 5053 and 5063 from theinterpolation control circuit 5093. The image data are transferred fromthe latches 5053 and 5063 to the interpolation section 5023. Theinterpolation section 5023 receives the picture element data g_(n) fromthe latch 5063 and receives the adjacent picture element data g_(n+1)from the latch 5053, performing enlargement interpolation defined by thepreviously-mentioned equations (11) and (12).

DESCRIPTION OF THE EIGHTH PREFERRED EMBODIMENT

FIG. 21 shows an eighth embodiment of this invention which is similar tothe embodiment of FIG. 20 except for design changes indicatedhereinafter.

As shown in FIG. 21, image data are sequentially written into linebuffer memories 6024, 6034, and 6044 via an input line 6014. At aninitial stage, image data corresponding to two lines are sequentiallywritten into the line buffer memories 6024 and 6034. During a subsequentstage, each time a periodical data process is completed, the image dataare written into the remaining line buffer memory. The image data areread out from the two of the line buffer memories 6024-6044, and linedata and adjacent line data are selected by selectors 6054 and 6064respectively. The selected line data are inputted, into an auxiliaryscan line data interpolation section 6074. An output data from theauxiliary interpolation section 6074 are inputted into a main scanpicture element data interpolation section 6084. The line data are thussubjected to enlargement/reduction interpolation processes by theauxiliary and main interpolation sections 6074 and 6084. Processed linedata outputted from the main interpolation section 6084 are alternatelywritten into line buffer memories 6104 and 6114. One of the line buffermemories 6104 and 6114 which is free from the data write process isallowed by a selector 6124 to supply final interpolated image data to anoutput line 6134.

An input line buffer control circuit 6144 generates signals forcontrolling the line buffer memories 6024-6044 and the selectors 6054and 6064. An output line buffer control circuit 6154 generates signalsfor controlling the line buffer memories 6104 and 6114 and the selector6124. An interpolation control circuit 6164 receives interpolation datafrom a suitable device such as a microcomputer via an input line 6174,and transferring the interpolation data to the interpolation circuits6074 and 6084 and controlling the interpolation circuits 6074 and 6084.

As shown in FIG. 22, the input picture element data are arranged in atwo dimensional format. FIG. 23 shows the tone levels of picture elementdata enclosed with circles in FIG. 22. The original picture element dataof FIGS. 22 and 23 are converted into processed picture element data ofFIGS. 24 and 25 through an interpolation process where reductioninterpolation with a division number of 8 and a reduction rate of 3/5 isperformed in the main scan, that is, in the X direction and whereenlargement interpolation with a division number of 4 and a reductionrate of 5/3 is performed in the auxiliary scan, that is, in the Ydirection.

DESCRIPTION OF THE NINTH PREFERRED EMBODIMENT

FIG. 26 shows a ninth embodiment of this invention which is similar tothe embodiment of FIG. 21 except that the main interpolation section6084 is placed at the front end.

What is claimed is:
 1. In a method for changing a size of an imagewherein new data are added between original picture element data throughan interpolation process to change the size of the original image by afactor of B/α where the characters B and α denote integers, theimprovement comprising a method of processing the image, including thesteps of:(a) equally dividing an interval between adjacent pictureelements of an original image into G image portions, wherein G is aninteger; (b) setting points corresponding to the respective dividedimage interval portions; (c) determining interpolation data at pointswhich vary as a function of adjacent picture elements of the originalimage; (d) selecting part of the interpolation data at a rate equal toB/(α·G), and (e) deriving output data h through said interpolationprocess in accordance with the following equation:

    h=gn+((gn+1-gn)/G)·i

where i denotes a number for selection of the points, which number i isdetermined in accordance with a rate equal to B/(α·G).
 2. The method ofclaim 1 further comprising the steps of changing the size of theoriginal image in a horizontal direction, and changing the size of theoriginal image in a vertical direction independent of the size change inthe horizontal direction.
 3. The method of claim 1, wherein said methodfor processing the image comprises the further steps of:(a) generating ascreen dot pattern in accordance with a prescribed screen cord numberand a prescribed screen dot angle; (b) holding the screen dot pattern ina first memory; (c) generating a recurrent screen dot pattern on thebasis of the screen dot pattern held by the first memory; (d) storingthe recurrent screen dot pattern in an area of a prescribed size of asecond memory; (e) generating an address for data write into, and datareadout from, the second memory in a first address generator; (f)temporarily holding an input variable tone image in a line buffercircuit; (g) generating an address for data write into, and data readoutfrom, the line buffer circuit in a second address generator; and (h)comparing image data outputted from the line buffer circuit and screendot pattern data outputted from the second memory in a comparator.
 4. Inan image processing apparatus including size changing means for changinga size of an image wherein new data are added between original pictureelement data, said size changing means including interpolating means forchanging the size of the original image by a factor of B/α where thecharacters B and α denote integers,the improvement wherein saidinterpolating means determines interpolation data at points which varyas a function of adjacent picture elements of the original image; saidimage processing apparatus comprises processing means, said processingmeans including: (a) dividing means for equally dividing an intervalbetween adjacent picture elements of an original image into G imageportions, wherein G is an integer; and (b) setting means for settingpoints corresponding to the respective divided image portions; andfurther including selecting means for selecting part of theinterpolation data at a rate equal to B/(α·G), said interpolating meansfurther including deriving means for deriving output data h inaccordance with the following equation:

    h=gn+((gn+1-gn)/G)·i

where i denotes a number for selection of the points which is determinedin accordance with a rate equal to B/(α·G).
 5. An improved imageprocessing apparatus in accordance with claim 4, wherein said sizechanging means further comprises horizontal changing means for changingthe size of the original image in a horizontal direction and verticalchanging means for changing the size of the original image in a verticaldirection independent of the size change in the horizontal direction. 6.An improved image processing apparatus in accordance with claim 4,wherein said processing means comprises:(a) a first memory holding ascreen dot pattern generated in accordance with a prescribed screen cordnumber and a prescribed screen dot angle; (b) means for generating arecurrent screen dot pattern on the basis of the screen dot pattern heldby the first memory, the recurrent screen dot pattern residing in anarea of a prescribed size; (c) a second memory holding the recurrentscreen dot pattern; (d) a first address generator generating an addressfor data write into and data readout from the second memory; (e) a linebuffer circuit temporarily holding an input variable tone image; (f) asecond address generator generating an address for data write into anddata readout from the line buffer circuit; and (g) a comparatorcomparing image data and screen dot pattern data, the image data beingoutputted from the line buffer circuit, the screen dot pattern databeing outputted from the second memory.
 7. The apparatus of claim 4wherein the interpolating means is operative to calculate each of theinterpolation picture element data from the values of four adjacentpicture elements of the original image.
 8. The apparatus of claim 6wherein the screen dot pattern held by the first memory has screen dotsrepresented by an arrangement of picture element data with tone levels,the screen dot angle equals tan⁻¹ (b/a) where the character "a" denotesa horizontal distance between adjacent screen dots and the character "b"denotes a vertical distance between the adjacent screen dots, the screencord number equals k/d where the character "k" denotes a recordingdensity of a recording device and the character "d" denotes a pitchequal to a square root of a² +b², and vertical and horizontal sizes ofthe screen dot pattern arrangement are equal to or greater than d². 9.The apparatus of claim 6 wherein the recurrent screen dot pattern isderived by reading out a portion of the screen dot pattern from thefirst memory, and the pattern portion has vertical and horizontal sizesequal to d², and further comprising means for repeatedly reading out therecurrent screen dot pattern from the second memory and therebygenerating a large screen dot pattern on the basis of the recurrentscreen dot pattern, the large screen dot pattern being used in thecomparator as the screen dot pattern data.